import { Application, IBoot } from "egg";

export default class CodoAppBoot implements IBoot {
	app: Application;
	constructor(app: Application) {
		this.app = app;
	}

	configWillLoad(): void {
		// 在框架中间件最后，app中间件之前，加载中控在线消费控制路由的中间件
		// 但注意，如果有其他插件或框架级别的中间件拦截了请求，则可能到不了此处，比如dinegg的jwtLogin用于判断登录，若先执行它，则该中间件进不来，应用级别请自行调整order
		this.app.config.coreMiddleware.push("zkOnlineConsume");
	}
	configDidLoad(): void {}
	async didLoad() {}
	async willReady() {
		// console.log(this.app.config.coreMiddleware);
		// console.log(this.app.config.appMiddleware);
	}
	async didReady() {}
	async serverDidReady() {}
}
